1. Field
Embodiments of the invention relate to the field of networking; and more specifically, to the packet fragmentation and reassembly.
2. Background Information
FIG. 1 is a block diagram of a 4th Generation (4G) Long Term Evolution (LTE) cellular network 100. An Evolved Packet Core 112 represents the network core of LTE. The EPC is a flat all-Internet Protocol (IP) based architecture. The EPC includes a Packet Data Network Gateway (PDN-GW) 103, a Serving Gateway (S-GW) 105, and a Mobility Management Entity (MME) 109. The PDN-GW is coupled with the Internet 101 (not part of the cellular network) over an SGi interface 102. The S-GW is coupled with the PDN-GW by S5/S8 interfaces 104. The MME is coupled with the S-GW by an S11 interface 108. An eNodeB 107 is coupled with the S-GW by an S1-U interface 106. The eNodeB is the name given to the base station in LTE. The eNodeB is coupled with user equipment (UE) 110 by an air interface 111 (e.g., evolved UMTS Terrestrial Radio Access Network (E-UTRA)). The user equipment may represent cellular phones, wireless computers, or other wireless devices. The PDN-GW, S-GW, MME, and eNodeB are logically separated entities in LTE, although they may be physically deployed on either the same or different network elements and may each be disposed on one or more network elements.
The 4G LTE network utilizes techniques to achieve high transmission speeds on the order of hundreds of megabits per second on the downlink, and on the order of tens of megabits per second on the uplink. The next generation air interface for LTE, called LTE-Advanced, which is already under development, is expected to have even higher per user speeds expected to be on the order of a gigabit per second on the downlink, and on the order of five hundred megabits per second on the uplink. Such high transmission speeds tend to place significant performance demands on the EPC or network core (e.g., in terms of control plane signaling scale, multi gigabit per second IP forwarding, security calculations, etc). In order to help support the existing speeds, as well as allow the speeds to increase over time, efficient packet processing should be performed within the EPC or network core.
One factor that significantly affects the efficiency of the packet processing within the EPC or network core is IP fragmentation and reassembly. Since the EPC is an all-IP based architecture, it needs to be able to handle IP fragmentation and reassembly. However, unnecessary IP fragmentation and reassembly tends to unnecessarily consume computational resources and/or increase packet latencies.
In the network core of LTE, an encapsulation or tunneling protocol is typically used to convey the IP packets. Currently, one of the most widely used protocols in LTE network cores is General Packet Radio Service (GPRS) Tunneling Protocol (GTP). GTP-U (e.g., GTPv1-U for version 1) is used for tunneling of user IP packets. GTP is typically used with user datagram protocol (UDP) as the transport protocol. The S5/S8 and S1-u interface use GTP to tunnel user IP packets to the UE. Further details of applying GTP to LTE are described in the document ETSI TS 129 281 V9.2.0 (2010-04), Technical Specification, 3GPP TS 29.281, Release 11.
Section 4.2.2 of this ETSI document provides that an inner IP packet shall be encapsulated at the GTPv1-U sender with a GTP header, user datagram protocol (UDP), and an outer IP header. If the resulting outer IP packet is larger than the maximum transmission unit (MTU) of the first link towards the destination GTPv1-U endpoint, fragmentation of the outer IP packet shall be performed by the sender as per IETF RFC 791 for an outer layer of IPv4 and IETF RFC 2460 for an outer layer of IPv6. The GTPv1-U sender should preferably fragment the outer IP packet to the smallest MTU of any link between GTPv1-U sender and GTPv1-U receiver.
However, there are several potential drawbacks to performing fragmentation on the outer IP packet (i.e., the IP packet encapsulating the received inner IP packet/payload). For one thing, if the outer packet is fragmented, then it may need to be reassembled and re-fragmented, one or sometimes multiple times while passing through the network core. For example, in IPv4 according to the specification reassembly is generally performed at the destination IP address and fragmentation may be performed at the source or at intermediate routers/switches. For example, if the outer packet is fragmented at the S5/S8 output interface of the PDN-GW, it may need to be reassembled at the S5/S8 input interface of the S-GW and then re-fragmented at the S1-U output interface of the S-GW. In case the outer IP packet is a fragment it will generally be reassembled at the ingress S5/S8 interface of SGW, because the outer IP header on S5/S8 interface has the destination IP anchored at SGW. Moreover, such reassembly and re-fragmentation may potentially also occur in one or more intermediate routers and/or switches (not shown) within the EPC or network core if the path MTU or link MTU is insufficient. Such additional fragmentations and reassemblies tend to increase the amount of computation and the packet latencies. For another thing, some network elements (e.g., some of the intermediate routers and/or switches) may potentially give less priority to and/or may potentially drop packet fragments when there is network congestion in order to help free up resources.